package com.hksj.acm.mapper;

import com.hksj.acm.dto.AlarmKindNumDTO;
import com.hksj.acm.dto.CockpitDeviceDTO;
import com.hksj.acm.vo.AlarmNumVO;
import com.hksj.acm.vo.CockpitAlarmListVO;
import com.hksj.acm.vo.CockpitDeviceVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author fjt
 * @data 2024/7/17 14:33
 * @describe 驾驶舱
 */
@Mapper
public interface CockpitMapper {

    /**
     * 按天统计指定时间内的温湿度报警数量
     * @param dto
     * @return
     */
    List<AlarmNumVO> queryHistoryAlarmNumByTime(@Param("dto")AlarmKindNumDTO dto);

    /**
     * 统计设备当前报警数量
     * @param dto
     * @return
     */
    int currentAlarmNum(@Param("dto")AlarmKindNumDTO dto);

    /**
     * 查询设备当前报警列表
     * @param dto
     * @return
     */
    List<CockpitAlarmListVO> currentAlarmList(@Param("dto")AlarmKindNumDTO dto);

    /**
     * 设备概览
     * @param dto
     * @param specialityModelCode
     * @param productCategoryKey
     * @return
     */
    List<CockpitDeviceVO> deviceOverView(@Param("dto")CockpitDeviceDTO dto,
            @Param("specialityModelCode")String specialityModelCode,
            @Param("productCategoryKey")String productCategoryKey);

}
